home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / 3DTOSHI2.ZIP / mpgfx / include / gfxvga.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-04-15  |  2.5 KB  |  75 lines

  1.  
  2. // gfxvga.h
  3. //
  4. // Copyright (c) 1995 by Toshiaki Tsuji, all rights reserved.
  5.  
  6. #ifndef __GFXVGADRV_H__
  7. #define __GFXVGADRV_H__
  8.  
  9. #include "stdgfx.h"
  10. #include "gfxdisp.h"
  11.  
  12. #define NUM_VGA_REGS 6
  13.  
  14. // VGA Regsiter Ports
  15. #define VGA_INDEX_PORT 0
  16. #define VGA_DATA_PORT  1
  17. #define DAC_MASK       2
  18. #define DAC_READ       3
  19. #define DAC_WRITE      4
  20. #define DAC_DATA       5
  21.  
  22. #if defined (__FORPWPK16__)
  23.   #define SELECTOR_VIDEO  0x0A000
  24. #else
  25.   #define SELECTOR_VIDEO  0x0A000  
  26. #endif
  27.  
  28. #define HVGA 1
  29.  
  30. class VGADRIVER : public DISPLAYDRIVER
  31.   {
  32.     protected :
  33.       LONG Registers[NUM_VGA_REGS];
  34.       BYTE *Buffer;
  35.       LONG CurMode;
  36.  
  37.       virtual VOID DrawHorizLine ( HDISPLAY hDisplay, LONG x1,
  38.                                    LONG x2, LONG y, COLOR Color );
  39.  
  40.       VOID DrawEllipsePoint ( HDISPLAY hDisplay, LONG Cx, LONG Cy,
  41.                               LONG x, LONG y, COLOR Color );
  42.       VOID FillEllipsePoint ( HDISPLAY hDisplay, LONG Cx, LONG Cy,
  43.                               LONG x, LONG y, COLOR Color );
  44.  
  45.     public :
  46.       VGADRIVER ();
  47.       virtual ~VGADRIVER ();
  48.  
  49.       virtual BOOLEAN SetUp ( DISPLAYDATA *Data );
  50.       virtual VOID Reset ();
  51.       virtual VOID Clear ( HDISPLAY hDisplay, LONG Color );
  52.  
  53.       virtual LONG GetWidth ( HDISPLAY hDisplay );
  54.       virtual LONG GetHeight ( HDISPLAY hDisplay );
  55.       virtual VOID DisplayImage ( IMAGE *Image, LONG Sx, LONG Sy,
  56.                                   LONG Wd, LONG Ht, HDISPLAY Dest,
  57.                                   LONG Cx, LONG Cy, LONG DestWd, LONG DestHt );
  58.       virtual VOID SetPalette ( HDISPLAY hDisplay, RGBPALETTE *Pal );
  59.       virtual VOID GetPalette ( HDISPLAY hDisplay, RGBPALETTE *Pal );
  60.       virtual VOID DrawLine ( HDISPLAY hDisplay, LONG x1, LONG y1, LONG x2, LONG y2,
  61.                               COLOR  Color );
  62.       virtual VOID DrawRect ( HDISPLAY hDisplay, LONG x1, LONG y1, LONG x2, LONG y2,
  63.                               COLOR Color );
  64.       virtual VOID FillRect ( HDISPLAY hDisplay, LONG x1, LONG y1, LONG x2, LONG y2,
  65.                               COLOR Color );
  66.       virtual VOID DrawPixel ( HDISPLAY hDisplay, LONG x, LONG y,
  67.                                COLOR Color );
  68.       virtual VOID DrawEllipse ( HDISPLAY hDisplay, LONG Cx, LONG Cy, LONG Rx, LONG Ry,
  69.                                  COLOR Color );
  70.       virtual VOID FillEllipse ( HDISPLAY hDisplay, LONG Cx, LONG Cy, LONG Rx, LONG Ry,
  71.                                  COLOR Color );
  72.   }; // End of VGADRIVER
  73.  
  74. #endif
  75.